# Python列表大冒险：切片索引怎么玩？

# [钛妹]: 听说Python列表切片像切水果？那索引会不会切到手呀？
# [钛妹]: 今天咱们要玩转列表的索引和切片操作
# [钛妹]: 钛哥快教教我怎么安全"下刀"！

# [钛哥]: 先看基础索引！列表像排队的水果篮
thislist = ["苹果", "香蕉", "樱桃"]
print(thislist[0])  # 输出：苹果

# [钛妹]: 哎？为什么是[0]不是[1]？
# [钛哥]: 因为程序员数数从0开始呀！试试取第二个元素
print(thislist[1])  # 输出：香蕉

# [钛哥]: 负数索引是倒着数的秘密武器！
# [钛哥]: -1代表最后一个元素，试试看
print(thislist[-1])  # 输出：樱桃

# [钛妹]: 那我想切一段水果拼盘怎么办？
# [钛哥]: 用[start:end]切片，注意含头不含尾
fruit_basket = ["苹果", "香蕉", "橙子", "猕猴桃", "芒果"]
print(fruit_basket[1:3])  # 输出：['香蕉', '橙子']

# [钛哥]: 不写start默认从头开始切
print(fruit_basket[:3])   # 输出：['苹果', '香蕉', '橙子']

# [钛哥]: 不写end默认切到末尾
print(fruit_basket[2:])   # 输出：['橙子', '猕猴桃', '芒果']

# [钛妹]: 能不能从倒数位置开始切片呀？
# [钛哥]: 负数索引也可以当起始点哦！
print(fruit_basket[-3:-1]) # 输出：['橙子', '猕猴桃']

# [钛妹]: 怎么判断水果在不在篮子里？
# [钛哥]: 用in关键字快速检查存在性
if "芒果" in fruit_basket:
    print("芒果在篮子里！")  # 会执行这行

# [钛哥]: 重点总结时间！记好六个知识点：
# 1.索引从0开始：print(list[0])
# 2.负数索引倒着数：print(list[-1])
# 3.切片含头不含尾：print(list[1:3])
# 4.省略start从头切：print(list[:3])
# 5.省略end切到底：print(list[2:])
# 6.存在性检查用in："苹果" in list

# [钛妹]: 原来列表操作像查字典一样简单！
# [钛妹]: 现在我能精准取出想要的数据啦！
# [钛妹]: 切片时记得"含头不含尾"就不会切到手啦！

# [钛妹]: 对了各位！持续学习才是硬道理！点赞关注不迷路！